perm filename ARMDF[SYS,HE]7 blob sn#056767 filedate 1973-08-08 generic text, type T, neo UTF8
COMMENT ⊗   VALID 00005 PAGES 
RECORD PAGE   DESCRIPTION
 00001 00001	   VALID 00005 PAGES 
 00002 00002		TITLE ARM
 00004 00003		These are conditional assembly flags
 00006 00004	IFN SIMU,<
 00010 00005		THIS IS THE 32 WORD MAIL MESSAGE
 00011 ENDMK
⊗;
	TITLE ARM
;	These are the error messages returned by the arm servo program

	ALLOK←←0	;ALL OK
	NOFILE←←3	;FILE NOT FOUND
	NODATA←←4	;ENTER ON DATA FILE FAILED
	NODEV←←5	;DEVICE DSK DOES NOT EXIST
	EXER←←1		;IF JUST 1 THEN OVERFLOW OR UNDERFLOW OCCURED,
	;IF OF THE FORM X1 THEN EXCESSIVE FORCE REQUIRED AT JOINT X
	GRASER←←2	;GRASP ERROR, HAND CLOSED TOO FAR
	TOUCH←←6	;STOPPED ON TOUCH
	;THIS ERROR IS OF THE FORM X6 WHERE THE X'th SENSOR TOUCHED
	READER←←7	;A/D READ ERROR
	TERR←←20	;SPACEWAR JOB FAILS TO TERMINATE
	HTERR←←22	;HAND FAILS TO FINISH IN TIME
	STPERR←←23	;ARM FAILED TO STOP ON FORCE LIMIT
	LOOPER←←24	;ARM IN CONTROL LOOP
	SAVERR←←25	;SAVE ARRAY INDEX ERROR
	FUNERR←←27	;FUNCTION DOES NOT EXIST
	NOTHER←←30	;THE ARM IS DOWN
	INVMES←←40	;MESSAGE INVALID, ARM NOT IN WAIT STATE
	REAERR←←50	;TRAJECTORY FILE READ ERROR
	VERSN←←60	;VERSION NUMBER WRONG
	REFERR←←70	;REFERENCE SUPPLY IS OFF,CHECK THE FUSE
	PDPERR←←100	;PDP-6 IS DOWN
	ISERR←←200	;PDP-6 SERVICE INTERRUPTED
	ADBUS←←300	;AD IS BUSY
	XGPBUS←←400	;XGP IS BUSY

	XLIST
	SUBTTL	AC DEFINITIONS AND FLAGS			LOU PAUL
	LIST
;	These are conditional assembly flags
	DEB←←0		;causes the AC's to be saved each jiffy
	STEP←←0		;No acceleration compensation and predicted velocity
	TACH←←0		;Integrates tach voltage and sets vgain
	TRACK←←0	;Causes a debugging file to be written
IFE TRACK,<
	DYNAMICS←←0	;CAUSES FORWARD AND FEEDBACK TO BE WRITTEN OUT
	REPORT←←0+DYNAMICS	;Causes display data to be written
>
IFN TRACK,<
	REPORT←←0
	DYNAMICS←←0
>
	SIMU←←0		;Turns this program into a sail callable routine to
			;simulate the arm
	USER←←0+SIMU	;This runs the SPACEWAR job in user mode and simulates the arm
	HANDWORK←←1		;IF ZERO DOSN'T DRIVE THE HAND
	ARMWORK←←1		;IF ZERO RETURNS THE ARM DOWN MESSAGE
IFN SIMU,<
	INTERNAL ARM.INIT,ARM.STEP
	INTERNAL ARM.THETA,ARM.GRASP,ARM.TOUCH,ARM.FUNCTION
>
	EXTERNAL JOBREN,JOBOPC
	OPDEF INTUUO [723B8]
	OPDEF UFBRD [706B8]

;	AC'S
	BITS←←0
	AC←1
	TAC←2
	MQ←3
	I←5
	J←6
	K←7
	L←10
	DACVAL←11	;CONTAINS THE A/D READING WITH THE SIGNBITS COMP'D
	CBUF←12		;POINTS TO CURRENT BUFFER
	DATWD←13	;ARM DATAO
	DATA←14		;DATA POINTER FOR DEBUGGING BUFFER
	TAC1←15
	P←17		;PUSH DOWN POINTER


;	CONSTANTS
	CHA←←62B23	;JOINT 6 POT CHANNEL
	CHA5←←61B23	;JOINT 5 POT CHANNEL
	N6CHA←←63B23	;ALT JOINT 6 POT CHANNEL
	HANDCHA←←70B23	;HAND POT CHANNEL
	PDLL←←5		;LENGTH OF PUSH DOWN
	MASTER←←16660	;VERSION NUMBER
	DBL←←20000	;LENGTH OF DEBUGGING BUFFER
	AD←←424		;DEVICE AD
	DEVT←←500	;DEVICE TOOL
	DB←←204		;DEVICE 136
	ARM←←420	;DEVICE ARM
	CLOCK←←730	;DEVICE CLOCK
	WIDTH←←600	;D/A TO SET PULSE WIDTHS
	MAXFN←←22	;MAXIMUM NUMBER OF FUNCTIONS
	JMPABS←←100	;JUMP ABSOLUTE
	SKPERR←←101	;SKIP ON ERROR
	SKPNER←←103	;SKIPN ON ERROR
	SKPSER←←104	;SKIPS ON ERROR
	JMPREL←←102	;JUMP RELATIVE

IFN USER,<OPDEF DATAO [JFCL]>

;	FLAGS WHICH RESIDE IN AC 0 OR IN BITSAV

	DTST←←1		;SPACE WAR JOB FINISHED
	POTREAD←←2	;READ POTS IN OCTAL+=1000, DO NOT CONVERT TO DEGREES
	RONLY←←4	;JUST READ POTS
	FINAL←←10	;NULL ARM ERRORS
	RUN←←20		;RUN ARM
	INCREM←←40	;INCREMENT SET POINT TOWARD DTH
	DROP←←100	;PLACE ARM DO NOT STOP IF ERRORS ARE ZERO
	ALT6←←200	;READ ALT POT 6
	HCL←←400	;INITIALIZATION FOR HAND FUNCTIONS
	ALT←←1000	;TRAJECTORY ALT PATH
	STP←←2000	;STOP ON FORCE LIMIT
	TRIP←←4000	;TURN ON ARM
	REREAD←←10000	;AD HAS HAD TO BE RESTARTED
	STCH←←20000	;STOP ON TOUCH
	VZERO←←40000	;INITIALIZE VZ
	WOB←←100000	;WOBBLE OUTER JOINTS
	NSET←←200000	;DO CALL SETSET
	BOTH←←400000	;MERGE
;FLAGS WHICH RESIDE IN THE LH OF DATWD
	NNUL←←1		;DO NOT NULL
	INT←←2		;INTERPOLATE CI AS THE ARM MOVES
	NXTFN←←4	;START NEXT FUNCTION NOW
;FLAGS IN LH OF INSTRUCTIONS
	MERGE←←400	;MERGE

	RELOCF←←40
	HOLDF←←20
	DEC←←-4
	XF←←1

	XALL
	XLIST
	SUBTTL	MESSAGE FORMAT				LOU PAUL
	LIST
;	THIS IS THE 32 WORD MAIL MESSAGE

EXE:	XWD MASTER,0	;18-27 NARGS, 30 RELOC, 31 HOLD, 32 SOTCH, 33-35 EXE
			;0 READ IN OCTAL
			;1 READ IN DECIMAL
			;2 EXECUTE FILE
			;3 EXECUTE FUNCTION
FILE:	0
PPPN:	0
BAND:	0
SEGJOB:	0
NAME:	0
STATUS:	0
SEGMENT:0
NERVES:	0
ETOR:	0
THETA:	0
ARGS:	BLOCK =21

	XLIST
	SUBTTL	USER LEVEL CODE				LOU PAUL
	LIST